package com.xmtlxx.common.tengbo.vo;

import com.xmtlxx.common.annotation.ExcelDictFormat;
import com.xmtlxx.common.convert.ExcelDictConvert;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;
import java.util.List;


/**
 * 挑拣任务视图对象 t_pick
 *
 * @author xmtlxx
 * @date 2022-08-15
 */
@Data
@ApiModel("挑拣任务视图对象")
public class PickVo {

    private static final long serialVersionUID = 1L;

    /**
     * 条件任务ID
     */
    @ExcelProperty(value = "条件任务ID")
    @ApiModelProperty("条件任务ID")
    private String id;

    /**
     * 出库单ID
     */
    @ExcelProperty(value = "出库单ID")
    @ApiModelProperty("出库单ID")
    private String wid;

    /**
     * 仓库ID
     */
    @ExcelProperty(value = "仓库ID")
    @ApiModelProperty("仓库ID")
    private String storeId;

    /**
     * 部门ID
     */
    @ExcelProperty(value = "部门ID")
    @ApiModelProperty("部门ID")
    private Long deptId;

    /**
     * 部门ID
     */
    @ApiModelProperty("部门")
    private String deptNo;

    /**
     * 任务编号
     */
    @ExcelProperty(value = "任务编号")
    @ApiModelProperty("任务编号")
    private String pickNo;

    /**
     * 状态
     */
    @ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "wms_pick_task_status")
    @ApiModelProperty("状态")
    private String status;

    /**
     * 描述
     */
    @ExcelProperty(value = "描述")
    @ApiModelProperty("描述")
    private String memo;

    /**
     * 图片附件
     */
    @ExcelProperty(value = "图片附件")
    @ApiModelProperty("图片附件")
    private String pics;

    /**
     * 挑拣员
     */
    @ExcelProperty(value = "挑拣员")
    @ApiModelProperty("挑拣员")
    private Long operator;

    @ApiModelProperty("挑拣员")
    private String operatorName;

    /**
     * 完成时间
     */
    @ExcelProperty(value = "完成时间")
    @ApiModelProperty("完成时间")
    private Date finishTime;

    /**
     * 创建人
     */
    @ExcelProperty(value = "创建人")
    @ApiModelProperty("创建人")
    private String createBy;

    /**
     * 创建时间
     */
    @ExcelProperty(value = "创建时间")
    @ApiModelProperty("创建时间")
    private Date createTime;

    /**
     * 更新人
     */
    @ExcelProperty(value = "更新人")
    @ApiModelProperty("更新人")
    private String updateBy;

    /**
     * 更新时间
     */
    @ExcelProperty(value = "更新时间")
    @ApiModelProperty("更新时间")
    private Date updateTime;

    /**
     * 接收人
     */
    @ExcelProperty(value = "接收人")
    @ApiModelProperty("接收人")
    private String acceptUser;

    /**
     * 接收时间
     */
    @ExcelProperty(value = "接收时间")
    @ApiModelProperty("接收时间")
    private Date acceptTime;

    /**
     * 接收状态
     */
    @ExcelProperty(value = "接收状态", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "wms_accept_status")
    @ApiModelProperty("接收状态")
    private String acceptStatus;

    /**
     * 删除标识
     */
    @ExcelProperty(value = "删除标识", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "sys_del_flag")
    @ApiModelProperty("删除标识")
    private String delFlag;

    /**
     * 数量
     */
    @ExcelProperty(value = "数量")
    @ApiModelProperty("数量")
    private Long nums;

    @ApiModelProperty(value = "部门")
    private String deptName;

    @ApiModelProperty(value = "仓库")
    private String storeName;

    @ApiModelProperty(value = "挑拣明细")
    private List<PickDtlVo> items;

    @ApiModelProperty(value = "挑拣员")
    private String nickName;

    @ApiModelProperty(value = "出库单号")
    private String exno;

    private String taskId;

    //打包数据
    private List<BoxVo> boxList;
}
